home *** CD-ROM | disk | FTP | other *** search
- ; a0 - string
- ; a1 - string to find
- ; d0 - startindex=0
- ; (4,a7) - string
- ; (12,a7) - startindex=0
-
- xdef _InStr
-
- _InStr movem.l d2/a2-a3,-(a7)
- move.l d0,d2
- add.l d0,a0
- move.b (a1)+,d0
- .loop move.b (a0)+,d1
- beq.s .notfound
- cmp.b d0,d1
- bne.s .loop
- move.l a0,a2
- move.l a1,a3
- .next move.b (a3)+,d1
- beq.s .found
- cmp.b (a2)+,d1
- bne.s .loop
- beq.s .next
- .found subq.l #1,a0
- move.l a0,d0
- sub.l d2,d0
- bra.s .finish
- .notfound moveq #-1,d0
- .finish movem.l (a7)+,d2/a2-a3
- rts
-